home *** CD-ROM | disk | FTP | other *** search
/ Amiga Games: Greatest Hits 1996 / Amiga Games: Greatest Hits 1996.iso / rexx / gridsave.agaiff < prev    next >
Text File  |  1995-06-15  |  2KB  |  102 lines

  1. /* GridSave.agaiff */
  2.  
  3. address agaiff_rexx
  4. options results
  5.  
  6. call close 'STDOUT'
  7. call close 'STDIN'
  8. call open 'STDIN','CON:20/20/500/120/AGAiff - GridSaving..'
  9. call pragma '*','STDIN'
  10. call open 'STDOUT','*'
  11.  
  12. status 0
  13. if result == "" then do
  14.     say "No picture loaded.."
  15.     address command wait 1
  16.     exit
  17. end
  18.  
  19. say "Grid Block X Size:"
  20. pull gridxs
  21. say "Grid Block Y Size:"
  22. pull gridys
  23. say "Number of Blocks X:"
  24. pull gridxn
  25. say "Number of Blocks Y:"
  26. pull gridyn
  27. say "Add X:"
  28. pull addx
  29. say "Add Y:"
  30. pull addy
  31. say "Start X:"
  32. pull startx
  33. say "Start Y:"
  34. pull starty
  35. say "[1] NumY times top-down or [2] NumX times left-right:"
  36. pull order
  37. say "Do you want to have all blocks joined in one file ? [y/n]"
  38. pull join
  39.  
  40. if join = "Y" then join=1; else join=0
  41.  
  42. 'requestfile "GridSave - FileName.."'
  43. filename = result
  44. if filename == "" then exit
  45.  
  46. noshow
  47. abc=0
  48.  
  49. if order=1 then do
  50. if join=0 then do
  51.     do rangex=startx for gridxn BY gridxs+addx
  52.        do rangey=starty for gridyn BY gridys+addy
  53.           range rangex rangey rangex+gridxs-1 rangey+gridys-1
  54.           save filename||"."||abc
  55.           abc = abc+1
  56.        end
  57.     end
  58. end; else do
  59.     do rangex=startx for gridxn BY gridxs+addx
  60.        do rangey=starty for gridyn BY gridys+addy
  61.           range rangex rangey rangex+gridxs-1 rangey+gridys-1
  62.           if abc = 0 then save filename
  63.         else do
  64.                   save filename||'.'
  65.             address command 'join "'||filename||'" "'||filename||'." AS "'||filename||'.."'
  66.             address command 'copy "'||filename||'.." "'||filename||'"'
  67.         end
  68.           abc = abc+1
  69.        end
  70.     end
  71.     address command 'delete "'||filename||'."'
  72.     address command 'delete "'||filename||'.."'
  73. end
  74. end; else do
  75. if join=0 then do
  76.     do rangey=starty for gridyn BY gridys+addy
  77.        do rangex=startx for gridxn BY gridxs+addx
  78.           range rangex rangey rangex+gridxs-1 rangey+gridys-1
  79.           save filename||"."||abc
  80.           abc = abc+1
  81.        end
  82.     end
  83. end; else do
  84.     do rangey=starty for gridyn BY gridys+addx
  85.        do rangex=startx for gridxn BY gridxs+addx
  86.           range rangex rangey rangex+gridxs-1 rangey+gridys-1
  87.           if abc = 0 then save filename
  88.         else do
  89.                   save filename||'.'
  90.             address command 'join "'||filename||'" "'||filename||'." AS "'||filename||'.."'
  91.             address command 'copy "'||filename||'.." "'||filename||'"'
  92.         end
  93.           abc = abc+1
  94.        end
  95.     end
  96.     address command 'delete "'||filename||'."'
  97.     address command 'delete "'||filename||'.."'
  98. end
  99. end
  100.  
  101. reshow
  102.